﻿''' <summary>
''' Stellt diverse Funktionen bereit
''' </summary>
''' <remarks></remarks>
Public Class notifierFunctions

    Private Const APPREGNAME As String = "GaysNotifier"
    Private Const REGAUTOSTARTFOLDER As String = "Software\Microsoft\Windows\CurrentVersion\Run"

    ''' <summary>
    ''' Neue Nachrichten-Text kurz
    ''' </summary>
    ''' <param name="Count">Anzahl Nachrichten</param>
    ''' <returns>Anzahl Nachrichten Text kurz</returns>
    ''' <remarks></remarks>
    Public Shared Function getShortNewMessageText(ByVal Count As Integer) As String
        Select Case Count
            Case 0
                Return "Keine neuen Nachrichten"
            Case 1
                Return "Eine neue Nachricht"
            Case Else
                Return Count.ToString + " neue Nachrichten"
        End Select
    End Function

    ''' <summary>
    ''' Neue Nachrichten-Text lang
    ''' </summary>
    ''' <param name="Count">Anzahl Nachrichten</param>
    ''' <returns>Anzahl Nachrichten Text lang</returns>
    ''' <remarks></remarks>
    Public Shared Function getLongNewMessageText(ByVal Count As Integer) As String
        Select Case Count
            Case 0
                Return "Du hast zurzeit keine ungelesenen Nachrichten bei GAYS.DE."
            Case 1
                Return "Du hast zurzeit eine ungelesene Nachricht bei GAYS.DE. Hier klicken zum Lesen!"
            Case Else
                Return "Du hast zurzeit " + Count.ToString + " ungelesene Nachrichten bei GAYS.DE. Hier klicken zum Lesen!"
        End Select
    End Function

    ''' <summary>
    ''' Prüft oder legt fest, ob Programm automatisch gestartet werden soll
    ''' </summary>
    ''' <value>Legt fest, ob Programm automatisch gestartet werden soll</value>
    ''' <returns>Gibt zurück, ob Programm automatisch gestartet werden soll</returns>
    ''' <remarks></remarks>
    Public Shared Property autostartEnabled() As Boolean
        Get
            Dim reg As New nativeRegistry

            Return (reg.getValue(REGAUTOSTARTFOLDER, APPREGNAME).ToLower = Application.ExecutablePath.ToLower)
        End Get
        Set(ByVal value As Boolean)
            Dim reg As New nativeRegistry

            If value Then
                reg.setValue(REGAUTOSTARTFOLDER, APPREGNAME, Application.ExecutablePath)
            Else
                reg.deleteValue(REGAUTOSTARTFOLDER, APPREGNAME)
            End If
        End Set
    End Property

End Class
